AliAnalysisTask *AddTask_obusch_jets() {
  
  AliLog::SetGlobalDebugLevel(0);
  AliLog::SetGlobalLogLevel(AliLog::kFatal);
  
  char *nonStdFile = "AliAODs.pwg4jets.root";
  Int_t kHighPtFilterMask  = 272 ; // OB 
  Bool_t kUseAODMC = kTRUE;
  
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) {
    Error("AddTask_aod_jets", "No analysis manager found.");
    return 0;
  }
  
  AliMCEventHandler *mcH = (AliMCEventHandler*)mgr->GetMCtruthEventHandler();
  if (!mcH) {
    //needed to be used with real data
    kUseAODMC = kFALSE;
  }
  

  if(0){
    gROOT->LoadMacro("AddTaskJets.C");
  
    AliAnalysisTaskJets *jetanaAOD  = AddTaskJets(kHighPtFilterMask); // UA1 
    // Int_t i = AddTaskJetsDelta(nonStdFile,kHighPtFilterMask,kUseAODMC); // write jets to deltaAODs
    Int_t i = AddTaskJetsDelta("",kHighPtFilterMask,kUseAODMC);   // write jets to AODs (not deltaAODs)
  }

  if(1){ // cluster task, MC
    gROOT->LoadMacro("./AddTaskJetCluster.C");

    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC", "",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );

    // constituent cutoff
    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 1.0, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 1.0, 0.9, 10, 0 );

    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 2.0, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 2.0, 0.9, 10, 0 );

    // radii
    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "ANTIKT", 0.3, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "ANTIKT", 0.3, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );

    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "ANTIKT", 0.2, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "ANTIKT", 0.2, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    
    // kt
    AddTaskJetCluster("AOD",   "",kHighPtFilterMask, 1, "KT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC", "",kHighPtFilterMask, 1, "KT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AODMC2","",kHighPtFilterMask, 1, "KT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
  }

  if(0){ // cluster task, data (like)
    gROOT->LoadMacro("AddTaskJetCluster.C");
    
    AddTaskJetCluster("AOD","",kHighPtFilterMask, 1, "ANTIKT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );
    AddTaskJetCluster("AOD","",kHighPtFilterMask, 1, "ANTIKT", 0.7, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );

    AddTaskJetCluster("AOD","",kHighPtFilterMask, 1, "KT", 0.4, 0, kTRUE, "" , 0.150, 0.9, 10, 0 );

    gROOT->LoadMacro("AddTaskJets.C");
    AliAnalysisTaskJets *jetanaUA1  = AddTaskJets("AOD","UA1",0.4,kHighPtFilterMask,0.150,0);
  }

  if(0){

    gROOT->LoadMacro("AddTaskJets.C");	
    Int_t i = AddTaskJetsDelta("",kHighPtFilterMask,kUseAODMC); 
  }	



}
